%matplotlib inline
""" handling files support packages """
from glob import glob
""" logic support packages """
import numpy as np
import pytesseract
import itertools
import csv
import pandas as pd
""" plot support packages """
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
""" image trasformation packages """
from PIL import Image
import skimage.io as skio
from skimage.util import dtype_limits
from skimage.morphology import label
from skimage.measure import regionprops
from skimage.morphology import label, skeletonize
from skimage.filters import rank
from skimage import color
from skimage import restoration
from skimage import feature
from skimage.measure import compare_ssim, compare_mse
from sklearn.preprocessing import binarize
""" statistical data visualization packages"""
import seaborn as sns
""" seaborn configurations """
sns.set_style('white')
sns.set_context('talk')
plt.rcParams['figure.figsize'] = 20, 10
from funcoes import *
img_files = sorted(glob('../imagens/captcha*.png')) + sorted(glob('../imagens/gerarCaptcha.asp*.png'))
imgs = skio.imread_collection(img_files)
len(imgs)
for idx, img in enumerate(imgs):
j = idx*3
n = len(imgs)
m = n*3
fig = plt.figure(figsize=(14, 655))
gs = gridspec.GridSpec(m,6)
ax = plt.subplot(gs[j, :3])
ax.set_yticks([])
ax.set_xticks([])
plt.imshow(img, aspect='auto')
ax = plt.subplot(gs[j, 3:])
ax.set_yticks([])
ax.set_xticks([])
plt.imshow(remove_small_blobs(img, background=255, min_area=35), aspect='auto')
for i in range(6):
ax = plt.subplot(gs[j+1, i])
ax.set_yticks([])
ax.set_xticks([])
plt.imshow(crop_char(img, n_char=i), aspect='auto')
for i in range(6):
ax = plt.subplot(gs[j+2, i])
ax.set_yticks([])
ax.set_xticks([])
plt.imshow(remove_small_blobs(crop_char(img, n_char=i), background=255, min_area=35), aspect='auto')